package com.sunny.fetch.pojo;

import javax.persistence.*;

@Table(name = "f_daily_info")
public class FDailyInfo {
    @Id
    private Long tid;

    /**
     * 交易日期
     */
    @Column(name = "trade_date")
    private String tradeDate;

    /**
     * 市场代码
     */
    @Column(name = "ts_code")
    private String tsCode;

    /**
     * 市场名称
     */
    @Column(name = "ts_name")
    private String tsName;

    /**
     * 挂牌数
     */
    @Column(name = "com_count")
    private Integer comCount;

    /**
     * 总股本（亿股）
     */
    @Column(name = "total_share")
    private Float totalShare;

    /**
     * 流通股本（亿股）
     */
    @Column(name = "float_share")
    private Float floatShare;

    /**
     * 总市值（亿元）
     */
    @Column(name = "total_mv")
    private Float totalMv;

    /**
     * 流通市值（亿元）
     */
    @Column(name = "float_mv")
    private Float floatMv;

    /**
     * 交易金额（亿元）
     */
    private Float amount;

    /**
     * 成交量（亿股）
     */
    private Float vol;

    /**
     * 成交笔数（万笔）
     */
    @Column(name = "trans_count")
    private Integer transCount;

    /**
     * 平均市盈率
     */
    private Float pe;

    /**
     * 换手率（％），注：深交所暂无此列
     */
    private Float tr;

    /**
     * 交易所（SH上交所 SZ深交所）
     */
    private String exchange;

    public FDailyInfo(Long tid, String tradeDate, String tsCode, String tsName, Integer comCount, Float totalShare, Float floatShare, Float totalMv, Float floatMv, Float amount, Float vol, Integer transCount, Float pe, Float tr, String exchange) {
        this.tid = tid;
        this.tradeDate = tradeDate;
        this.tsCode = tsCode;
        this.tsName = tsName;
        this.comCount = comCount;
        this.totalShare = totalShare;
        this.floatShare = floatShare;
        this.totalMv = totalMv;
        this.floatMv = floatMv;
        this.amount = amount;
        this.vol = vol;
        this.transCount = transCount;
        this.pe = pe;
        this.tr = tr;
        this.exchange = exchange;
    }

    public FDailyInfo() {
        super();
    }

    /**
     * @return tid
     */
    public Long getTid() {
        return tid;
    }

    /**
     * @param tid
     */
    public void setTid(Long tid) {
        this.tid = tid;
    }

    /**
     * 获取交易日期
     *
     * @return trade_date - 交易日期
     */
    public String getTradeDate() {
        return tradeDate;
    }

    /**
     * 设置交易日期
     *
     * @param tradeDate 交易日期
     */
    public void setTradeDate(String tradeDate) {
        this.tradeDate = tradeDate;
    }

    /**
     * 获取市场代码
     *
     * @return ts_code - 市场代码
     */
    public String getTsCode() {
        return tsCode;
    }

    /**
     * 设置市场代码
     *
     * @param tsCode 市场代码
     */
    public void setTsCode(String tsCode) {
        this.tsCode = tsCode;
    }

    /**
     * 获取市场名称
     *
     * @return ts_name - 市场名称
     */
    public String getTsName() {
        return tsName;
    }

    /**
     * 设置市场名称
     *
     * @param tsName 市场名称
     */
    public void setTsName(String tsName) {
        this.tsName = tsName;
    }

    /**
     * 获取挂牌数
     *
     * @return com_count - 挂牌数
     */
    public Integer getComCount() {
        return comCount;
    }

    /**
     * 设置挂牌数
     *
     * @param comCount 挂牌数
     */
    public void setComCount(Integer comCount) {
        this.comCount = comCount;
    }

    /**
     * 获取总股本（亿股）
     *
     * @return total_share - 总股本（亿股）
     */
    public Float getTotalShare() {
        return totalShare;
    }

    /**
     * 设置总股本（亿股）
     *
     * @param totalShare 总股本（亿股）
     */
    public void setTotalShare(Float totalShare) {
        this.totalShare = totalShare;
    }

    /**
     * 获取流通股本（亿股）
     *
     * @return float_share - 流通股本（亿股）
     */
    public Float getFloatShare() {
        return floatShare;
    }

    /**
     * 设置流通股本（亿股）
     *
     * @param floatShare 流通股本（亿股）
     */
    public void setFloatShare(Float floatShare) {
        this.floatShare = floatShare;
    }

    /**
     * 获取总市值（亿元）
     *
     * @return total_mv - 总市值（亿元）
     */
    public Float getTotalMv() {
        return totalMv;
    }

    /**
     * 设置总市值（亿元）
     *
     * @param totalMv 总市值（亿元）
     */
    public void setTotalMv(Float totalMv) {
        this.totalMv = totalMv;
    }

    /**
     * 获取流通市值（亿元）
     *
     * @return float_mv - 流通市值（亿元）
     */
    public Float getFloatMv() {
        return floatMv;
    }

    /**
     * 设置流通市值（亿元）
     *
     * @param floatMv 流通市值（亿元）
     */
    public void setFloatMv(Float floatMv) {
        this.floatMv = floatMv;
    }

    /**
     * 获取交易金额（亿元）
     *
     * @return amount - 交易金额（亿元）
     */
    public Float getAmount() {
        return amount;
    }

    /**
     * 设置交易金额（亿元）
     *
     * @param amount 交易金额（亿元）
     */
    public void setAmount(Float amount) {
        this.amount = amount;
    }

    /**
     * 获取成交量（亿股）
     *
     * @return vol - 成交量（亿股）
     */
    public Float getVol() {
        return vol;
    }

    /**
     * 设置成交量（亿股）
     *
     * @param vol 成交量（亿股）
     */
    public void setVol(Float vol) {
        this.vol = vol;
    }

    /**
     * 获取成交笔数（万笔）
     *
     * @return trans_count - 成交笔数（万笔）
     */
    public Integer getTransCount() {
        return transCount;
    }

    /**
     * 设置成交笔数（万笔）
     *
     * @param transCount 成交笔数（万笔）
     */
    public void setTransCount(Integer transCount) {
        this.transCount = transCount;
    }

    /**
     * 获取平均市盈率
     *
     * @return pe - 平均市盈率
     */
    public Float getPe() {
        return pe;
    }

    /**
     * 设置平均市盈率
     *
     * @param pe 平均市盈率
     */
    public void setPe(Float pe) {
        this.pe = pe;
    }

    /**
     * 获取换手率（％），注：深交所暂无此列
     *
     * @return tr - 换手率（％），注：深交所暂无此列
     */
    public Float getTr() {
        return tr;
    }

    /**
     * 设置换手率（％），注：深交所暂无此列
     *
     * @param tr 换手率（％），注：深交所暂无此列
     */
    public void setTr(Float tr) {
        this.tr = tr;
    }

    /**
     * 获取交易所（SH上交所 SZ深交所）
     *
     * @return exchange - 交易所（SH上交所 SZ深交所）
     */
    public String getExchange() {
        return exchange;
    }

    /**
     * 设置交易所（SH上交所 SZ深交所）
     *
     * @param exchange 交易所（SH上交所 SZ深交所）
     */
    public void setExchange(String exchange) {
        this.exchange = exchange;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", tid=").append(tid);
        sb.append(", tradeDate=").append(tradeDate);
        sb.append(", tsCode=").append(tsCode);
        sb.append(", tsName=").append(tsName);
        sb.append(", comCount=").append(comCount);
        sb.append(", totalShare=").append(totalShare);
        sb.append(", floatShare=").append(floatShare);
        sb.append(", totalMv=").append(totalMv);
        sb.append(", floatMv=").append(floatMv);
        sb.append(", amount=").append(amount);
        sb.append(", vol=").append(vol);
        sb.append(", transCount=").append(transCount);
        sb.append(", pe=").append(pe);
        sb.append(", tr=").append(tr);
        sb.append(", exchange=").append(exchange);
        sb.append("]");
        return sb.toString();
    }
}